from utils.log_utils import logger


def click_expection(by, element, max_attempts=5):
            def _inner(driver):
                # 多次点击操作
                actual =0   #实际点击次数
                while actual<max_attempts:
                    # 进行点击操作
                    actual +=1 #每次循环，实际点击次数加一
                    try:
                        # 如果点击过程中报错，则捕获异常执行exception逻辑，并继续循环
                        # 没有报错，则直接return 循环结束
                        driver.find_element(by, element).click()
                        return True
                    except Exception:
                        logger.debug("在点击动作时出现了一次异常")
                # 当实际点击次数大于最大点击次数时，结束循环并抛出异常
                raise Exception("超出了最大点击次数")
            return _inner